//
//  ZYBErrorHandler.m
//  homework
//
//  Created by gaofeng on 15/11/26.
//  Copyright © 2015年 zyb. All rights reserved.
//

#import "ZYBErrorMsgHelper.h"
#import "NSDictionary+Safety.h"

@interface ZYBErrorMsgHelper () {
    NSArray *_errorArray;
}

@end

@implementation ZYBErrorMsgHelper

- (id) init
{
    if (self = [super init]) {
        
        _errorArray = @[@{@"-3": @"咦，没有网络了"},
                       @{@"-1": @"网络不给力，加载失败"},
                       @{@"1": @"请求参数错误"},
                       @{@"2": @"网络不给力，加载失败"},
                       @{@"3": @"您还没有登录，请先登录"},
                       @{@"4": @"配置文件缺失"},
                       @{@"5": @"参数不存在"},
                       @{@"6": @"签名错误"},
                       @{@"7": @"数据错误"},
                       @{@"8": @"您已被封禁,有疑问请到作业帮吧反馈"},
                       @{@"9": @"需要验证码"},
                       @{@"10": @"验证码错误"},
                       @{@"11": @"验证码获取失败"},
                       @{@"12": @"无权访问"},
                       @{@"13": @"无权访问"},
                       @{@"14": @"无效请求"},
                       @{@"15": @"系统内部错误"},
                       @{@"16": @"系统内部错误"},
                       @{@"17": @"网络萌抽了～ 稍后再试吧"},
                       @{@"18": @"网络悲剧啦，再努力试试～"},
                       
                       @{@"10000": @"用户尚未注册"},
                       @{@"10001": @"用户已经注册过"},
                       @{@"10002": @"新增用户失败"},
                       @{@"10003": @"邀请码不存在"},
                       @{@"10004": @"上传头像失败"},
                       @{@"10005": @"性别修改失败"},
                       @{@"10006": @"名字修改失败"},
                       @{@"10007": @"修改年级失败"},
                       @{@"10008": @"昵称一个月只能修改一次"},
                       @{@"10009": @"获取手机验证码失败"},
                       @{@"10010": @"绑定手机号失败"},//
                       @{@"10011": @"手机已经被绑定过或者帐号原有手机号错误"},
                       @{@"10012": @"验证码已经失效"},
                       @{@"10013": @"无效手机号码"},
                       @{@"10014": @"已经绑定过手机号"},
                       @{@"10015": @"意见反馈失败"},
                       @{@"10016": @"邀请码已经使用过"},
                       @{@"10017": @"绑定邀请码失败"},
                       @{@"10018": @"生成邀请码失败"},
                       @{@"10019": @"该手机已经绑过其他帐号"},
                       @{@"10020": @"参数错误"},
                       @{@"10021": @"意见反馈内容长度不合格"},
                       @{@"10022": @"不允许填写自己的邀请码"},
                       @{@"10023": @"获取验证码次数过多,每天5次"},
                       @{@"10024": @"名字格式有误"},
                       @{@"10025": @"该手机已经填写过邀请码"},
                       @{@"10026": @"设置QQ号失败"},
                       @{@"10027": @"绑定学校失败"},
                       @{@"10028": @"修改用户名失败"},
                       @{@"10029": @"您不是管理员"},
                       @{@"10030": @"未设置学校信息..."},
                       @{@"10031": @"作业帮管理员添加失败"},
                       @{@"10030": @"附近的人功能关闭了,无法获取附近的人"},
                       
                       // 图片和问作业
                       @{@"11000": @"抱歉，文件格式不正确"},  //非上传文件
                       @{@"11001": @"抱歉，文件过大"},       //超过php.ini限制
                       @{@"11002": @"抱歉，文件过大"},       //超过form表单限制
                       @{@"11003": @"文件只有部分被上传"},          //文件只有部分被上传
                       @{@"11004": @"没有文件被上传"},   //没有文件被上传
                       @{@"11005": @"无临时文件目录"},           //无临时文件目录
                       @{@"11006": @"写入失败"},       //写入失败
                       @{@"11007": @"扩展导致图片上传失败"},           //扩展导致图片上传失败
                       @{@"11008": @"图片大小超过限制"},                //图片大小超过限制
                       @{@"11009": @"图片格式错误"},         //图片格式错误
                       @{@"11010": @"图片上传失败"},    //图片上传失败
                       @{@"11011": @"提交内容超过长度限制"},       //提交内容超过长度限制
                       @{@"11012": @"提问失败"},         //提问失败
                       @{@"11013": @"免费提问次数达到限制"},  //免费提问次数达到限制
                       @{@"11014": @"回答提交失败"},          //回答提交失败
                       @{@"11015": @"问题不存在"},      //问题不存在
                       @{@"11016": @"问题已解决"},            //问题已解决
                       @{@"11017": @"问题已设置了好评"},
                       @{@"11018": @"提问重复"},
                       @{@"11019": @"问题包含邮箱地址"},
                       @{@"11020": @"问题删除状态不需要更改"},
                       @{@"11021": @"回答删除状态不需要更改"},
                       @{@"11022": @"更新问题失败"},
                       @{@"11023": @"问题已被删除"},
                       @{@"11024": @"帖子已被删除"},
                       @{@"11025": @"问题已经被感谢过"},
                       @{@"11026": @"已经邀请评价"},
                       @{@"11027": @"评价失败"},
                       @{@"11028": @"等级不够"},
                       @{@"11029": @"帮帮币不够"},
                       @{@"11030": @"又调皮了!问题里好像有秘密~"},
                       @{@"11031": @"该帖子已被设置"},
                       @{@"11032": @"该帖子已被设置"},
                       @{@"11033": @"帖子设置数量达到上限"},
                       @{@"11034": @"该帖已是精华帖"},
                       @{@"11035": @"该帖已是置顶帖"},
                       @{@"11036": @"取消系统置顶帖"},
                       @{@"11037": @"不能取消系统置顶帖"},
                       @{@"11038": @"已经投过这个选项了~"},
                       @{@"11039": @"单选投票不能重复投票哦~"},
                       @{@"11040": @"帖子已被删除"},
                       @{@"11041": @"投票已结束~ 萌萌哒"},
                       @{@"11042": @"回帖已被删除  辛苦啦～"},
                       @{@"11043": @"问题已经追加过悬赏了"},
                       @{@"11044": @"问题已经有人回答啦"},
                       
                       @{@"12000": @"使用道具失败"},
                       @{@"12001": @"取消使用道具失败"},
                       @{@"12002": @"礼品不存在"},
                       @{@"12003": @"帮帮币不够"},
                       @{@"12004": @"添加礼品操作失败"},
                       @{@"12005": @"帮帮币更新失败"},
                       @{@"12006": @"商城操作失败"},
                       @{@"12007": @"礼品数量不足"},
                       @{@"12008": @"该礼品不存在"},
                       @{@"12009": @"已经设置过地址"},
                       @{@"12010": @"设置收货地址失败"},
                       @{@"12011": @"删除我的物品失败"},
                       @{@"12012": @"别调皮!大神你已经填过号码了..."},
                       @{@"12013": @"发送的用户数量太多了"},
                       
                       @{@"13100": @"已经上传过萌图秀了"},
                       @{@"12001": @"上传的萌图秀被禁用了"},
                       @{@"13102": @"不再活动期限内"},
                       
                       @{@"14000": @"系统大人很忙哦～"},
                       @{@"14001": @"好友验证消息找不到～ 晕死啦"},
                       @{@"14002": @"验证消息已通过啦"},
                       @{@"14003": @"不是好友啦～"},
                       @{@"14004": @"你们已经不是好友了,暂时无法发送私信哦:("},
                       @{@"14005": @"我们已经是好友啦～"},
                       
                       @{@"99999": @"未知错误"}
                       ];
        
        
    }
    return self;
}


- (NSString *)getErrMesage:(NSError *)error
{
    
    NSString *errorString = error.localizedDescription;
    if (errorString) {
        return errorString;
    }
    for (NSDictionary *item in _errorArray) {
        NSString *result = [item objectForKeySafely:[NSString stringWithFormat: @"%ld", (long)error.code]];
        if (result) {
            return result;
        }
    }
    
    return @"网络请求失败!";
}

@end
